const app = getApp()

Page({
  data: {
    commonSurnames: ['李', '王', '张', '刘', '陈', '杨', '赵', '黄', '周', '吴', '徐', '孙', '胡', '朱', '高', '林', '何', '郭', '马', '罗', '梁', '宋', '郑', '谢', '韩', '唐', '冯', '于', '董', '萧'],
    surnameIndex: 0,
    surname: '李',
    gender: 'male',
    nameFormatIndex: 0,
    birthDateType: 'exact',
    calendar: 'solar',
    birthDate: '2023-01-01',
    birthTime: '12:00',
    showResults: false,
    generatedNames: [],
    adShown: false
  },
  
  onLoad: function () {
    console.log('AI智能起名小程序已加载')
    // 初始化广告SDK
    if (tt.createRewardedVideoAd) {
      this.rewardedVideoAd = tt.createRewardedVideoAd({
        adUnitId: 'vem94qei91vebm0xjz' // 替换为实际的广告单元ID
      })
      
      this.rewardedVideoAd.onError(err => {
        console.log('广告加载失败', err)
      })
      
      this.rewardedVideoAd.onClose(res => {
        // 用户点击了【关闭广告】按钮
        if (res && res.isEnded || res === undefined) {
          // 正常播放结束，可以下发游戏奖励
          this.setData({
            adShown: true
          })
          this.generateNames()
        } else {
          // 播放中途退出，不下发游戏奖励
          tt.showToast({
            title: '请完整观看广告以生成名字',
            icon: 'none'
          })
        }
      })
    }
  },
  
  // 姓氏选择
  onSurnameChange: function(e) {
    const index = e.detail.value
    this.setData({
      surnameIndex: index,
      surname: this.data.commonSurnames[index]
    })
  },
  
  // 性别选择
  onGenderSelect: function(e) {
    this.setData({
      gender: e.currentTarget.dataset.gender
    })
  },
  
  // 姓名形式选择
  onNameFormatSelect: function(e) {
    this.setData({
      nameFormatIndex: parseInt(e.currentTarget.dataset.format)
    })
  },
  
  // 出生日期类型选择
  onBirthDateTypeSelect: function(e) {
    this.setData({
      birthDateType: e.currentTarget.dataset.type
    })
  },
  
  // 日历类型选择
  onCalendarSelect: function(e) {
    this.setData({
      calendar: e.currentTarget.dataset.calendar
    })
  },
  
  // 出生日期选择
  onBirthDateChange: function(e) {
    this.setData({
      birthDate: e.detail.value
    })
  },
  
  // 出生时间选择
  onBirthTimeChange: function(e) {
    this.setData({
      birthTime: e.detail.value
    })
  },
  

  
  // 开始智能起名
  onGenerateNames: function() {
    if (!this.data.surname) {
      tt.showToast({
        title: '请输入姓氏',
        icon: 'none'
      })
      return
    }
    
    // 显示广告提示
    tt.showModal({
      title: '提示',
      content: '需要观看广告后才能生成名字，是否继续？',
      success: (res) => {
        if (res.confirm) {
          // 用户点击确定，展示广告
          this.showAd()
        }
      }
    })
  },
  
  // 展示广告
  showAd: function() {
    if (this.rewardedVideoAd) {
      this.rewardedVideoAd.show()
    } else {
      // 如果广告组件未创建，直接生成名字（测试环境）
      this.setData({
        adShown: true
      })
      this.generateNames()
    }
  },
  
  // 生成名字
  generateNames: function() {
    if (!this.data.adShown) {
      return
    }
    
    // 模拟名字生成
    const surname = this.data.surname
    const gender = this.data.gender
    const nameFormat = this.data.nameFormatIndex
    
    // 根据性别生成不同风格的名字
    let names = []
    if (gender === 'male') {
      if (nameFormat === 0) { // 双字名
        names = [
          surname + '宇轩',
          surname + '浩然',
          surname + '子轩',
          surname + '宇航',
          surname + '俊杰',
          surname + '子墨',
          surname + '浩宇',
          surname + '思源',
          surname + '泽宇',
          surname + '弘毅'
        ]
      } else { // 三字名
        names = [
          surname + '宇浩然',
          surname + '子轩宇',
          surname + '浩宇轩',
          surname + '宇航天',
          surname + '俊杰豪',
          surname + '子墨轩',
          surname + '浩宇航',
          surname + '思源泽',
          surname + '泽宇航',
          surname + '弘毅志'
        ]
      }
    } else {
      if (nameFormat === 0) { // 双字名
        names = [
          surname + '梦琪',
          surname + '雨萱',
          surname + '诗涵',
          surname + '佳怡',
          surname + '欣怡',
          surname + '语嫣',
          surname + '思颖',
          surname + '雨桐',
          surname + '梦瑶',
          surname + '雅楠'
        ]
      } else { // 三字名
        names = [
          surname + '梦琪雅',
          surname + '雨萱诗',
          surname + '诗涵雅',
          surname + '佳怡雅',
          surname + '欣怡雅',
          surname + '语嫣雅',
          surname + '思颖雅',
          surname + '雨桐雅',
          surname + '梦瑶雅',
          surname + '雅楠雅'
        ]
      }
    }
    
    this.setData({
      generatedNames: names,
      showResults: true,
      adShown: false // 重置广告状态
    })
    
    // 滚动到结果区域
    tt.pageScrollTo({
      scrollTop: 1000,
      duration: 300
    })
  },
  

  
  // 选择名字
  onNameSelect: function(e) {
    const index = e.currentTarget.dataset.index
    const selectedName = this.data.generatedNames[index]
    
    tt.showModal({
      title: '名字解析',
      content: `您选择的名字是：${selectedName}\n\n此名字五行属性平衡，音律优美，寓意美好。`,
      showCancel: false
    })
  }
})
